package com.achievement.mappings;

import com.achievement.domain.bo.HonorBO;
import com.achievement.domain.dto.honor.HonorDTO;
import com.achievement.domain.entity.HonorApplyBookEntity;
import com.achievement.domain.entity.HonorEntity;
import com.achievement.domain.param.honor.HonorParam;
import com.achievement.domain.vo.honor.HonorVO;
import org.mapstruct.Mapper;

@Mapper(componentModel = "spring")
public interface HonorMapping {
    HonorVO dto2Vo(HonorDTO dto);

    HonorBO dto2Bo(HonorDTO dto);
    HonorBO param2Bo(HonorParam param);
    HonorEntity dto2Entity(HonorDTO dto);

    HonorDTO vo2Dto(HonorVO vo);

    HonorVO bo2Vo(HonorBO bo);
    HonorEntity bo2Entity(HonorBO bo);

    HonorDTO entity2Dto(HonorEntity dto);

    HonorVO entity2Vo(HonorEntity dto);

    HonorBO entity2Bo(HonorEntity dto);
    HonorEntity honorApplyBook2HonorEntity(HonorApplyBookEntity hen);
}
